package com.gshrms.recruitment.entity.param;

import java.util.Date;
import java.util.List;
import javax.validation.constraints.*;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.gshrms.common.core.domain.CommonEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.gshrms.common.annotation.Excel;
import com.gshrms.common.annotation.Excel.ColumnType;
import com.gshrms.common.annotation.Excel.Type;
import com.gshrms.common.annotation.Excels;
import com.gshrms.common.core.domain.BaseEntity;
import com.gshrms.common.xss.Xss;

/**
 * 用户对象 sys_user
 *
 * @author ruoyi
 */
@Data
public class SysUserParam extends CommonEntity {
    private static final long serialVersionUID = 1L;


    @ApiModelProperty("应聘者姓名")
    @NotEmpty(message = "请输入姓名")
    private String applicantName;

    @ApiModelProperty("是否接受调剂")
    @NotEmpty(message = "请选择是否接受调剂")
    private String isAdjustment;

    @ApiModelProperty("目前状态")
    @NotEmpty(message = "请选择目前状态")
    private String currentStatus;

    @ApiModelProperty("来源渠道：内推、官网")
    @NotEmpty(message = "请选择获知途径")
    private String channel;

    @ApiModelProperty("照片")
    private String photo;

    @ApiModelProperty("性别")
    @NotEmpty(message = "请选择性别")
    private String gender;

    @ApiModelProperty("身份证号")
    @NotEmpty(message = "请输入身份证号")
    private String idCard;

    @ApiModelProperty("出生日期")
    @NotEmpty(message = "请选择出生年月")
    private String birthday;

    @ApiModelProperty("手机号")
    @NotEmpty(message = "请输入手机号")
    private String mobile;

    @ApiModelProperty("最高学历")
    @NotEmpty(message = "请选择最高学历")
    private String maxEducation;

    @ApiModelProperty("专业")
    private String major;

    @ApiModelProperty("籍贯")
    @NotEmpty(message = "请选择籍贯")
    private String nativePlace;

    @ApiModelProperty("通讯地址省市区")
    @NotEmpty(message = "请输入通讯地址")
    private String address;

    @ApiModelProperty("通讯地址详细地址")
    @NotEmpty(message = "请输入通讯地址")
    private String addressDetailed;

    @ApiModelProperty("民族")
    @NotEmpty(message = "请选择民族")
    private String nation;

    @ApiModelProperty("政治面貌")
    @NotEmpty(message = "请选择政治面貌")
    private String politicalStatus;

    @ApiModelProperty("婚姻状况")
    @NotEmpty(message = "请选择婚姻状况")
    private String maritalStatus;

    @ApiModelProperty("正面彩色照片（jpg格式）")
    @NotEmpty(message = "请上传一寸免冠蓝色正面彩色照片")
    private String frontPhoto;

    @ApiModelProperty("紧急联系人")
    @NotEmpty(message = "请输入紧急联系人")
    private String contacts;

    @ApiModelProperty("与应聘者关系")
    @NotEmpty(message = "请输入与应聘者关系")
    private String contactsRelationship;

    @ApiModelProperty("紧急联系人手机号")
    @NotEmpty(message = "请输入紧急联系人手机号")
    private String contactsPhone;

    @ApiModelProperty("身份证正反面图片地址")
    @NotEmpty(message = "请上传身份证正反面扫描件")
    private String idCardImage;

    @ApiModelProperty("附件名称")
    private String attachmentName;

    @ApiModelProperty("附件地址")
    @NotEmpty(message = "请上传附件")
    private String attachmentAddress;

    @ApiModelProperty("签名图片地址")
    @NotEmpty(message = "请应聘者签名")
    private String signImage;

    @ApiModelProperty("子表数据")
    private String tableJson;

    @ApiModelProperty("参加工作日期")
    private String employmentDate;

    @ApiModelProperty("加入时间")
    private Date addTime;
}
